package com.hyt.it.ogt.kq.service.gov.model.param;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.hyt.core.ModelSerializable;
import com.hyt.it.ogt.kq.service.gov.model.vo.ImportStudentQualificationVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.util.List;

/**
 * @program: it-ogt-kq
 * @description: 导入考生报名资格请求参数
 * @author: Yang HuanKun
 * @create: 2023-08-09 10:16
 **/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ToString(callSuper = true)
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value = "ImportStudentQualificationsDataParam对象", description = "导入考生报名资格请求参数")
public class ImportStudentQualificationsDataParam implements ModelSerializable {

    @NotBlank(message = "报名ID不能为空")
    @ApiModelProperty(value = "报名ID")
    private String projectId;

    @Valid
    @Size(min = 1, message = "考生数据不能为空")
    @ApiModelProperty(value = "考生数据信息 这里只有校验结果为true的上传数据")
    private List<ImportStudentQualificationVO> studentQualifications;

    @JsonIgnore
    @ApiModelProperty(value = "机构ID", hidden = true)
    private String officeId;

    @JsonIgnore
    @ApiModelProperty(value = "部门ID", hidden = true)
    private String deptId;

    @JsonIgnore
    @ApiModelProperty(value = "用户ID", hidden = true)
    private String userId;
}
